﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace iNet.Media.Audio
{
	/// <summary>
	/// 提供常用音訊格式。
	/// </summary>
	public static class AudioFormats
	{
		/// <summary>
		/// Advanced Audio Coding。
		/// </summary>
		public static readonly IMediaFormat Aac = new MediaFormat("Advanced Audio Coding", "audio/x-aac", new string[] { ".aac" });
		/// <summary>
		/// MPEG Audio。
		/// </summary>
		public static readonly IMediaFormat MpegAudio = new MediaFormat("MPEG Audio", "audio/mpeg", new string[] { ".mp3", ".mpg" });
		/// <summary>
		/// MPEG-4 Audio。
		/// </summary>
		public static readonly IMediaFormat Mpeg4Audio = new MediaFormat("MPEG-4 Audio", "audio/mp4", new string[] { ".mp4", ".m4a" });
		/// <summary>
		/// Linear Pulse-code Modulation (16-bits)。
		/// </summary>
		public static readonly IMediaFormat Pcm16 = new MediaFormat("Linear Pulse-code Modulation (16-bits)", "audio/L16", new string[] { ".pcm" });
		/// <summary>
		/// Linear Pulse-code Modulation (20-bits)。
		/// </summary>
		public static readonly IMediaFormat Pcm20 = new MediaFormat("Linear Pulse-code Modulation (20-bits)", "audio/L20", new string[] { ".pcm" });
		/// <summary>
		/// Linear Pulse-code Modulation (24-bits)。
		/// </summary>
		public static readonly IMediaFormat Pcm24 = new MediaFormat("Linear Pulse-code Modulation (24-bits)", "audio/L24", new string[] { ".pcm" });
		/// <summary>
		/// Linear Pulse-code Modulation (8-bits)。
		/// </summary>
		public static readonly IMediaFormat Pcm8 = new MediaFormat("Linear Pulse-code Modulation (8-bits)", "audio/L8", new string[] { ".pcm" });
		/// <summary>
		/// Real Audio。
		/// </summary>
		public static readonly IMediaFormat RealAudio = new MediaFormat("Real Audio", new string[] { "audio/x-realaudio", "audio/vnd.rn-realaudio" }, new string[] { ".ra", ".ram" });
		/// <summary>
		/// Waveform Audio File Format。
		/// </summary>
		public static readonly IMediaFormat Wave = new MediaFormat("Waveform Audio File Format", "audio/wav", new string[] { ".wav" });
		/// <summary>
		/// Windows Media Audio。
		/// </summary>
		public static readonly IMediaFormat Wma = new MediaFormat("Windows Media Audio", "audio/x-ms-wma", new string[] { ".wma" });
	}
}
